PHP数据库注入

293次阅读

共计 1003 个字符,预计需要花费 3 分钟才能阅读完成。

HTML 页面:

<html>
<head>
<title>Sql 注入演示 </title>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
</head>
<body >
<form action="login.php" method="post">
    <fieldset >
        <legend>Sql 注入演示 </legend>
        <table>
            <tr>
                <td> 用户名:</td>
                <td><input type="text" name="username"></td>
            </tr>
            <tr>
                <td> 密  码:</td>
                <td><input type="text" name="password"></td>
            </tr>
            <tr>
                <td><input type="submit" value=" 提交 "></td>
                <td><input type="reset" value=" 重置 "></td>
            </tr>
        </table>
    </fieldset>
</form>
</body>
</html>

PHP 页面:

    if($_POST['username']){$conn=@mysql_connect("localhost",'test','yinhn123') or die(" 数据库连接失败!");

        mysql_select_db("test",$conn) or die(" 数据库不存在 ");

        $name=$_POST['username'];

        $pwd=$_POST['password'];

        $sql="select * from user where name='$name'and passwd='$pwd'";

        echo $sql."<br><br>";

        $query=mysql_query($sql);

        $arr=mysql_fetch_array($query);

        if(is_array($arr)){echo " 登陆成功!";}else{echo " 用户名或密码有误,请重新登录!";}
    }

当用户名输入为“‘ or 1=1#”
此时执行的 SQL 语句为:

select * from user where name='' or 1=1# ' and passwd=''
正文完
 2
Hack V
版权声明:本站原创文章,由 Hack V 于2022-12-14发表,共计1003字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
请喝咖啡